package session;

import java.util.Date;
import java.util.List;

import br.com.jbc.controller.Controller;
import entity.Venda;

public class SessionVenda {

	private Controller<Venda> controller = new Controller<Venda>();

	public Controller<Venda> getController() {
		return controller;
	}

	public void setController(Controller<Venda> controller) {
		this.controller = controller;
	}

	// ///////////////////////////////METODOS/////////////////////////////////////
	// ///////////////////////////////////////////////////////////////////////////
	// ///////////////////////////////////////////////////////////////////////////

	public boolean save(Venda venda) throws Exception {
		if (this.validaVenda()) {
			venda.setEmissao(new Date());
			venda.setCancelamento(new Date());
			venda.setCriacao(new Date());
			this.controller.insertReturnId(venda);
			return true;
		}
		return false;
	}

	public boolean update(Venda venda) throws Exception {
		if (this.validaVenda()) {
			venda.setCancelamento(new Date());
			this.controller.insertOrUpdate(venda);
			return true;
		}
		return true;
	}

	public boolean cancela(Venda venda) throws Exception {
		venda.setCancelamento(new Date());
		this.update(venda);
		return true;
	}

	public boolean validaVenda() {

		return true;
	}

	public List<Venda> find(Venda venda) throws Exception {
		return this.controller.findList(venda);
	}

}
